$(function() {
	$('.input-num-up').click(function(){
		upDownOperation( $(this) );
	});

	$('.input-num-down').click(function(){
		upDownOperation( $(this) );
	});

	function upDownOperation(element)
	{
		var _input = element.parent().find('input'),
			_value = _input.val(),
			_step = _input.attr('data-step') || 1;

		//检测当前操作的元素是否有disabled，有则去除
		element.hasClass('disabled') && element.removeClass('disabled');

		//检测当前操作的元素是否是操作的添加按钮（.input-num-up）‘是’ 则为加操作，‘否’ 则为减操作
		if ( element.hasClass('input-num-up') )
		{
			var _new_value = parseInt( parseFloat(_value) + parseFloat(_step) ),
				_max = _input.attr('data-max') || false,
				_down = element.parent().find('.input-num-down');
			
			//若执行‘加’操作且‘减’按钮存在class='disabled'的话，则移除‘减’操作按钮的class 'disabled'
			_down.hasClass('disabled') && _down.removeClass('disabled');
			if (_max && _new_value >= _max) {
				_new_value = _max;
				element.addClass('disabled');
			}
		} else {
			var _new_value = parseInt( parseFloat(_value) - parseFloat(_step) ),
				_min = _input.attr('data-min') || false,
				_up = element.parent().find('.input-num-up');

			//若执行‘减’操作且‘加’按钮存在class='disabled'的话，则移除‘加’操作按钮的class 'disabled'
			_up.hasClass('disabled') && _up.removeClass('disabled');
			if (_min && _new_value <= _min) {
				_new_value = _min;
				element.addClass('disabled');
			}
		}
		_input.val( _new_value );
	}
});